package com.chat.gateway.config;

import org.springframework.cloud.gateway.route.RouteLocator;
import org.springframework.cloud.gateway.route.builder.RouteLocatorBuilder;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 *      这是教学代码
 *      这是教学代码
 *      这是教学代码
 *      这是教学代码
 *
 * @author wei kunJie
 * @date 2024/2/7 15:19:23
 */
//这里是教学代码就不加入ICO中了
//@Configuration
public class GateWayConfig {
    /**
     * 这个可以在一定程度上代替配置文件写路由
     * 配置了一个id为route-name的路由规则，
     * 当访问地址 http://localhost:9527/guonei时会自动转发到地址：http://news.baidu.com/guonei
     * 当访问地址 http://localhost:9527/时会自动转发到地址：http://news.baidu.com/
     *
     * @param builder
     * @return
     */
//    @Bean
    public RouteLocator customRouteLocator(RouteLocatorBuilder builder) {
        RouteLocatorBuilder.Builder routes = builder.routes();

//        routes.route("path_route_atguigu", r -> r.path("/guonei").uri("http://news.baidu.com/guonei")).build();
        return routes.route("path_route_atguigu", r -> r.path("/")
                .uri("http://news.baidu.com/"))
                .build();
    }

//    @Bean
    public RouteLocator customRouteLocator2(RouteLocatorBuilder builder) {
        RouteLocatorBuilder.Builder routes = builder.routes();
        routes.route("path_route_atguigu2", r -> r.path("/guoji").uri("http://news.baidu.com/guoji")).build();
        return routes.build();
    }
}
